1. Field of the Invention
The present invention relates to the design of form-based processing systems. More specifically, the present invention relates to a method and an apparatus for using a distributed form object model to facilitate distributed form event processing.
2. Related Art
Existing web applications typically operate by presenting a form to a user through a client, such as a web browser. This enables the user to interact with an underlying application in an intuitive manner by entering data into the form, and by triggering application functions through controls, such as buttons, located in the form. Execution of an application function associated with the form typically involves a number of interactions between intelligence on the client and intelligence on the application server.
In developing forms for web deployment, client-side intelligence is typically written to an object model and programming language supported by the client, and server-side intelligence on the application server is typically written to an object model and programming language supported by the server. This results in programming logic that differs for each supported client and for each supported application server. For example, a user wishing to deploy a form to an HTML browser typically writes Java™ script to the Dynamic HTML object model to produce the client-side intelligence. Whereas, the server-side intelligence associated with the form might be written to the programming model of a web server application, in a server-side programming language such as Java.
If a need arises to obtain information form the server, client-side intelligence has to be added to submit a request for the information to the server, and corresponding serve-side intelligence has to be added to service the request. This can be complicated because the client-side intelligence and the server-side intelligence are typically written to different object models by different groups of people using different programming languages. Hence, modifications to a form often have to be coordinated between client-side programmers are server-side programmers. This greatly complicates the tasks of developing and maintaining web applications.
Hence, what is needed is a method and an apparatus that facilitates developing and maintaining web applications without the complications described above.